/*
 * @Author: HeAo
 * @Date: 2022-09-16 09:48:12
 * @LastEditTime: 2022-09-16 15:42:36
 * @LastEditors: HeAo
 * @Description: 
 * @FilePath: \第二阶段\ES6\day04迭代器\2-迭代器.js
 * 别乱动！
 */
// 1、keys、values、entries
let arr = [1, 2, 3, 4, 'a']
// 迭代器对象可以使用for of遍历
let keys = arr.keys() //遍历后返回下标
let values = arr.values() //遍历后返回值
let entries = arr.entries() //遍历后返回下[标,值]数组
// for (let k of entries) {
//   console.log(k);
// }
console.log(keys.next()); //{ value: 0, done: false }   value：下标   done -- false：不是最后一个成员  true：是最后一个成员
console.log(values.next()); //{ value: 1, done: false }  value：值 done同上
console.log(entries.next()); //{ value: [ 0, 1 ], done: false }  value：[下标:值] done同上

// 2、手动调用
let result
while (!(result = keys.next()).done) {
  console.log(result)
}